<?php 


/** 
***************************************************
*欢迎使用免费版xSite企业自助建站软件！
*这是一个专业为搜索引擎营销而设计的，极稳定、极易维护的建站软件！
*官方客服：help@php.net.cn
*官方下载网址：http://www.php.net.cn/xsite/ 
***************************************************
**/




 if (!file_exists(SITE_ROOT . "/data/version.txt")) { $c_version = ''; } else { $c_version = read_array_file(SITE_ROOT . "/data/version.txt"); } if ($s_version = @file(Data_API('/xsite/version.php'))) { $s_version = implode('', $s_version); $s_version = unserialize(base64_decode($s_version)); } else { $s_version = ''; } if (md5_file("xsite.zip") != $s_version['md5']) { message("update.php?action=version", "升级程序不能解压，你网站根目录中的xsite.zip与官方发布的不一致！"); } $reportfile = SITE_ROOT . '/data/update.log'; $updatelog = fopen($reportfile, "w+"); if (!function_exists('zip_open')) { $oU = new SimpleUnzip('xsite.zip'); $bF = FALSE; foreach($oU->Entries as $oI) { if ($oI->Name == 'domain.php') continue; $zip_dir = '.' . substr($oI->Path, 5); if (!@file_exists($zip_dir)) { file_mkdir($zip_dir); } if (!empty($oI->Data)) { $fp = @fopen("{$zip_dir}/" . $oI->Name, "wb+"); if ($fp) { fwrite($fp, $oI->Data); fclose($fp); @fwrite($updatelog, "\r\nOK:{$zip_dir}/" . $oI->Name); } else { @fwrite($updatelog, "\r\nError:{$zip_dir}/" . $oI->Name); } } $bF = TRUE; } } else { $zip = zip_open("xsite.zip"); if ($zip) { while ($zip_entry = zip_read($zip)) { $file_name = zip_entry_name($zip_entry); if (preg_match('/^xsite\//is', $file_name)) { $file_name = substr($file_name, 6); } if ($file_name == '' || preg_match('/domain\.php$/is', $file_name)) { continue; } if (zip_entry_open($zip, $zip_entry)) { if (preg_match('/\/$/is', $file_name)) { if (!file_exists($file_name)) { file_mkdir($file_name); } } else { $file_dir = dirname($file_name); if ($file_dir != '.' && $file_dir != '..' && !file_exists($file_dir)) { file_mkdir($file_dir); } $size = zip_entry_filesize($zip_entry); if(($fp = @fopen($file_name, 'wb'))) { if ($size > 0) { fwrite($fp, zip_entry_read($zip_entry, $size)); } @fwrite($updatelog, "\r\nOK:{$file_name}"); fclose($fp); } else { @fwrite($updatelog, "\r\nError:{$file_name}/"); } } zip_entry_close($zip_entry); } } zip_close($zip); } } fclose($updatelog); $c_version = $s_version; save_array_file($c_version, SITE_ROOT. "/data/version.txt"); if (file_exists(SITE_ROOT . "/data/cache/version.txt")) { unlink(SITE_ROOT . "/data/cache/version.txt"); } session_destroy(); message("xsite.php?action=login", "升级完成了！请重新登录后台！", "top"); ?>